////////////////////////////////////////////////////////////////////////////////
/*! \file
 * \brief Enter a brief description here.
 *
 * Enter a detailed description here. (optional)
 *
 * \author Ivo Wingelaar
 * \date 2011
 * \version 0.0.1
 * \copyright GNU Lesser General Public License v3
 */
////////////////////////////////////////////////////////////////////////////////

#ifndef __LYNX_HPP_INCLUDED__
#define __LYNX_HPP_INCLUDED__

////////////////////////////////////////////////////////////////////////////////
// Headers
////////////////////////////////////////////////////////////////////////////////
#include "LynxWindowManager.hpp"

////////////////////////////////////////////////////////////////////////////////
//! \brief The lynx namespace.
/*!
 * Details...
 */
namespace Lynx
{

#if (!defined _LYNX_EXTENSION_)

////////////////////////////////////////////////////////////////////////////////
//! \brief Creates a new window with a lynx engine running inside it.
/*!
 * \return A new window with a lynx engine running inside it.
 *
 * \param[in] parameters The parameters of the window you want to create.
 */
extern "C" _LYNX_API_ WindowManager* _LYNX_CALL_CONV_ create_lynx_window(const WindowParameters& parameters);

////////////////////////////////////////////////////////////////////////////////
//! \brief Returns the version of the engine.
/*!
 * \return The version of the engine.
 */
extern "C" _LYNX_API_ uint32_t _LYNX_CALL_CONV_ get_sdk_version(void);

#endif // _LYNX_EXTENSION_

} // namespace Lynx

#endif // __LYNX_HPP_INCLUDED__

